// 路径解析函数
function resolve(dir) {
    const path = require('path');
    return path.join(__dirname, dir);
}

module.exports = {
    // 开发服务器配置
    devServer: {
        port: 3000, // 开发服务器端口
        open: false, // 启动后自动打开浏览器
        proxy: {
            // 代理配置，用于解决跨域问题
            '/api': {
                target: 'http://127.0.0.1:85', // 实际的后端服务地址
                changeOrigin: true, // 是否改变源地址
                pathRewrite: {
                    '^/api': '' // 重写路径，去掉/api前缀
                },
                // 超时设置
                timeout: 30000
            }
        },
        // 允许来自任何主机的访问
        host: '0.0.0.0'
    },
    // 打包输出配置
    outputDir: 'dist',
    assetsDir: 'static',
    productionSourceMap: false,
    // CSS配置
    css: {
        loaderOptions: {
            scss: {
                prependData: '@import "@/uni.scss";'
            }
        }
    },
    // 链式webpack配置
    chainWebpack: config => {
        // 添加路径别名
        config.resolve.alias
            .set('@', resolve('src'))
            .set('@api', resolve('src/api'))
            .set('@static', resolve('src/static'))
            .set('@pages', resolve('src/pages'));
    }
}